package class1;

/**
 * 不用任何比较判断，找出两个数的最大值
 * 接替思路：
 */
public class Code07_MaxNumber {
    public static void main(String[] args) {
        int a = 20;
        int b = 13;
        int c = (a - b);
        System.out.println((c >> 31) & 1);
        System.out.println(((c >> 31) & 1) ^ 1); // 正数:1 负数：0

        int scA = sign(c); // 1
        int scB = flip(scA); // 0

        System.out.println(a * scA + b * scB);

    }

    // 获取c的符号标志位
    // c为正数 0
    // c为负数 1
    public static int sign(int n) {
        return flip((n >> 31) & 1);
    }

    public static int flip(int n) {
        return n ^ 1;
    }
}
